home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / util / sys / QuickROM.lha / quickrom / QuickROM.text < prev    next >
Encoding:
Text File  |  1998-05-21  |  8.2 KB  |  204 lines

  1. QuickROM
  2.  
  3. Synopsis: remaps Kickstart to FAST RAM, using 68060 or 68040 MMU
  4.  
  5.      $VER: QuickROM v36.08 (21-May-1998) by Simon N Goodwin
  6.  
  7. This makes operating system code much faster by making a copy of
  8. Kickstart - the built-in part of the Amiga's operating system -
  9. in fast memory. It does this dynamically and can be activated or
  10. deactivated at any time.
  11.  
  12.  
  13. HISTORY
  14.  
  15. Version 36.07: first Aminet release.
  16.  
  17.     Thanks to the following users for their comments:
  18.  
  19.     Dave Wright <centaur@dm.net>
  20.     Gary Goldberg <GaryG@ix.netcom.com>
  21.     Ingo Musquinier <Ingo@night.de>
  22.     Guillaume Ubbelohde <950947@mercure.umh.ac.be>
  23.     Michael Lewis <madlew@silyn-tek.de>
  24.     Frank Papaeliou <frank@poky.srv.net>
  25.     Daryl Holley <dholley@pcisys.net>
  26.     
  27.     Feedback of any kind is much appreciated, and helps
  28.     to ensure the development and updating of QuickROM.
  29.     
  30. Version 37.08 second Aminet release.
  31.  
  32.     New version added for use from a Workbench icon or WBStartup.
  33.     Documentation improved to indicate installation options.
  34.     
  35.     
  36. INSTALLATION
  37.  
  38. There is no need to install QuickROM in your startup because it
  39. can be run at almost any time. However experience has shown that
  40. many users want the speed benefit as soon as they turn on their
  41. Amiga, or soon thereafter, so they choose to include it in their
  42. startup. You can add QuickROM to your startup in three places:
  43.  
  44. (1) User-Startup - this is the conventional place to put such
  45.     a system extension. Simply put the QuickROM program in the
  46.     C: directory on your boot disk, and add the command:
  47.     
  48. C:QuickROM
  49.     
  50.     anywhere in the file S:User-Startup. The advantage of having
  51.     it at the start is that it speeds up subsequent execution of
  52.     commands in your startup sequence. The disadvantage is that
  53.     you lose 516K of memory (which can be reclaimed) early on.
  54.     
  55. (2) WBStartup - simply drag the icon named QuickROM_WB into the
  56.     WBStartup drawer on your boot disk, and QuickROM will run
  57.     automatically.
  58.     
  59. (3) Startup-Sequence - strictly speaking Amiga users should not
  60.     modify any of the contents of S:Startup-Sequence - the file
  61.     S:User-Startup was introduced with Workbench 2.0 to reduce
  62.     the problems often caused by a messed up startup-sequence.
  63.     But some programs - like Shapeshifter, Fusion or OxyPatcher
  64.     - require you to add commands to Startup-Sequence, and you
  65.     may want to include QuickROM in that file so that it speeds
  66.     up all subsequent startup commands in that file, as well as
  67.     those in User-Startup and WBStartup, which run later. It is
  68.     assumed that you have copied the command to 
  69.     
  70.     If you decide to ignore the advice of Commodore and alter
  71.     your startup-sequence, the QuickROM command should be added
  72.     after the line starting with the SetPatch command. There is
  73.     little point in putting it before commands that restart the
  74.     system (OpenOxyPort, RsrvWarm, PrepareEmul etc) as it will
  75.     have to be done again at every reset and will not be loaded
  76.     for long enough to make a significant difference, the first
  77.     few times.
  78.     
  79.     This startup-sequence has been successfully used to set up
  80.     Fusion, OxyPatcher, QuickROM and Quantum on an A4000/060:
  81.     
  82. RsrvCold -e >NIL: ; For Fusion
  83. c:openoxypport ; For OxyPatcher
  84. SetPatch QUIET
  85. C:QuickROM
  86. QUANTUM 1 >NIL:
  87.  
  88.     The rest of the normal startup-sequence follows hereafter.
  89.     
  90.  
  91. REMOVAL
  92.  
  93. Whatever way you start QuickROM, you can stop it (or start it
  94. again) by issuing another QuickROM command from a shell, Arexx
  95. or Directory Opus (etc), clicking on the QuickROM_WB icon, or
  96. rebooting the system.
  97.     
  98.  
  99. COMPATIBILITY
  100.  
  101. QuickROM was written and tested on a Mark 2 Cyberstorm 68060, more
  102. than doubling the speed of access to Kickstart code. It has also
  103. been tested on GVP's G-FORCE 68060 (A2000, A3000 or A4000 versions),
  104. Commodore's 3640 A4000/040 card (where it helps a bit, but hampered
  105. by its very slow 'fast' RAM interface) MacroSystem's Warp Engine
  106. 68040/33 and a Cyberstorm Mark 1, which is even faster than the
  107. Mark 2. Nic Wilson's KickSpeed tester (from Set040) reads ROM 2.4
  108. times faster on Mark 1 Cyberstorm hardware after running QuickROM.
  109. The advantage is almost as great on Mark 2, and can be even more
  110. on a Mark 3 (PPC or 060), Warp Engine or GVP accelerator. For the
  111. most advantage - up to 30 times or more in some cofigurations - run
  112. it on a 16 bit Amiga (e.g. A2000) with a Zorro-based 68040 or 68060
  113. accelerator. The relocation will also boost the speed of access to
  114. chip RAM, custom chips and other Zorro cards in this case, as it
  115. eliminates many potentially contentious accesses to slow 16 bit
  116. motherboard resources - eliminating 16 bit ROM accesses leaves
  117. more time for everything else in the 24 bit address space. If you
  118. try it on any system not listed above, or encounter any results
  119. which you do not expect after reading this documentation, please
  120. contact the author with details by email: simon@studio.woden.com
  121.  
  122.  
  123. COMPARISONS
  124.  
  125. QuickROM is not the first such program - it follows in the path of
  126. the shareware Set040, written before Amiga OS made use of the MMU,
  127. and Commodore's developer-only MAPROM (which uses special mapping
  128. hardware) and later commercially-bundled commands like KSREMAP,
  129. WARPKICK and ROM2FAST, but it is free, concise, more compatible
  130. and has features which some others lack.
  131.  
  132.  
  133. ADVANTAGES
  134.  
  135. The advantages of QuickROM over the proprietary versions are:
  136.  
  137. * Freely distributable, with full assembly language source code
  138.   and copious comments explaining its strengths and weaknesses.
  139.   
  140. * Allocates RAM from the top of memory to minimise fragmentation.
  141.  
  142. * Allows de-allocation as well as allocation, freeing 516K memory.
  143.  
  144. * Full diagnostic Exec result codes for cases when it can't work.
  145.  
  146. * Does not use undocumented 68060.library hooks, so it should work
  147.   fine on any other 68060 or 68040 system with an MMU, unlike some.
  148.  
  149. * Works with 1 Mb ROMs as well as Commodore 512K ones, and uses the
  150.   documented method to find the ROM size, so it should suit other
  151.   sizes too, as long as they're in the first 32 Mb of address space
  152.   (likely as the MAGIC_ROM_SIZE needs to be at address 16 Mb - 20).
  153.  
  154.  
  155. LIMITATIONS
  156.  
  157. * Requires an MMU, and won't work with old 68030, 68451 or 68851 ones.
  158.   There are already plenty of Kickstart re-mappers for those systems.
  159.  
  160. * May get confused in the MMU table setup or ROM location is radically
  161.   changed in some future Amiga. This program is inevitably architecture-
  162.   and processor-specific, although I've tried to make it fairly flexible.
  163.  
  164. * No messages. Check the return code to find out EXACTLY what happened.
  165.  
  166. * Only remaps the current Kickstart - no provision to change to another
  167.   version (e.g. a developer Kickstart on disk). This is deliberate, as
  168.   (1) changing Kickstart on a running system would require a reset and
  169.   QuickROM is designed to let you turn it on or off at any time while
  170.   the system continues to work normally (2) as a former Certified Amiga
  171.   developer, the author does not condone or encourage the theft of test
  172.   versions of the Kickstart software.
  173.  
  174.  
  175. ERROR CODES
  176.  
  177.   Type SET after the QuickROM command to see the return code (RC).
  178.  
  179.  0 indicates success. Other values indicate failure and the reason why.
  180.  
  181. 20 indicates that Kickstart has already been remapped by some other
  182.    program. QuickROM takes no action in this case, or others below.
  183.  
  184. 22 signifies that there is not enough fast memory in one piece for the
  185.    ROM image and associated data. QuickROM requires a contiguous 516K.
  186.    
  187. 24 indicates that the MMU is using 8K pages. QuickROM expects 4K pages,
  188.    for compatibility with Setpatch, Enforcer, Cyberguard and other MMU
  189.    programs. The source file includes untested code for 8K page support.
  190.  
  191. 26 indicates that the MMU is not enabled. This may mean that it is not
  192.    available in silicon (e.g. on an EC040 or EC060 processor. These
  193.    configurations have not been supplied as standard in any Amiga to
  194.    date, but they do work (without the MMU_) fr instance I've got a
  195.    C= 3640 with an EC040 on it, having moved the original XC040 to a
  196.    Warp Engine.
  197.  
  198. 28 indicates that the MMU has not been initialised. Normally this is a
  199.    function of SetPatch (except early versions) in conjunction with the
  200.    68040 or 68060 library. Enforcer also sets up MMU tables if they do
  201.    not already exist.
  202.  
  203. 30 indicates that the processor is too old, i.e. not a 68040 or 68060!
  204.